package com.wei.shopping.service;

import com.wei.shopping.entrty.PageResult;
import com.wei.shopping.entrty.QueryPageBean;
import com.wei.shopping.pojo.Commodity;
import com.wei.shopping.pojo.Feedback;

import java.util.List;

import java.util.Map;

public interface CommService {
    /**
     * 分页查询商品数据
     * @param queryPageBean
     * @param commstatus
     * @return
     */
    PageResult findall(QueryPageBean queryPageBean,Integer commstatus);

    /**
     * 设置用户违规
     * @param
     * @return
     */
    void violation(Commodity commodity);
    /**
     * 审核通过
     */
    void pass(Commodity commodity);

    /**
     * 通过id查找商品
     * @param commid
     * @return
     */
    Commodity findById(String commid);

    /**
     * 通过整个商品类去查找商品
     * @param commodity
     * @return
     */
    Commodity findByAll(Commodity commodity);
    /**
     * 更改commoidty表
     * @param commid
     */
    void addLiulan(String commid);

    /**
     * 添加商品
     * @param commodity
     */
    void addComm(Commodity commodity);

    /**
     * 插入图片
     * @param imageList
     */
    void addImage(String imageList,String commid);

    /**
     * 通过用户id查找商品
     * @param queryPageBean
     * @param commstatus
     * @param userid
     * @return
     */
    PageResult findAllByUserId(QueryPageBean queryPageBean,Integer commstatus,String userid);

    /**
     * 设置商品已售出
     * @param commid
     * @param userid
     */
    void solded(String commid,String userid);

    /**
     * 删除商品
     * @param commid
     */
    void deletecomm(String commid);

    /**
     * 商品id查找商品
     * @param commid
     * @return
     */
    Map findByCommid(String commid);

    /**
     * 修改商品信息
     * @param commodity
     */
    void updatecomm(Commodity commodity);

    /**
     * 获取热门商品和最新商品
     * @return
     */
    Map hotcomm();

    /**
     * 获取商品详情图片
     * @param commid
     * @return
     */
    List<String> detailpic(String commid);
    /**
     * 通过类别，查找条件，排列循序,最低价，最高价分页查询
     * @param queryPageBean
     * @param category
     * @param paixu
     * @return
     */
    PageResult findAllByAll(QueryPageBean queryPageBean,String category,String paixu,Integer minprice,Integer maxprice);

    /**
     * 添加反馈
     * @param feedback
     */
    void addfeedback(Feedback feedback);


    /**
     * 设置商品状态
     * @param commstatus
     * @param commid
     */
    void updatestatus(Integer commstatus,String commid);
}
